package exception;

public class FinallyDemo3 {
    public static void main(String[] args) {
        int num =dosome();
        System.out.println(num);
    }
    /*
        JVM在执行一个方法是会隐含着添加一个变量.用于记录方法
        的返回值.该变量的类型取决于方法返回值声明的类型.
        并最终在方法执行完毕后将变量的值返回.
     */
    public static int dosome(){//定义返回值变量 int _return(不可见);
        int x =1;
        try{
            /*
                return的作用有两个:
                1:将返回值复制给方法返回值变量_return
                2:结束方法
             */
            return x;
        }finally {
            //结束方法钱必须要推出异常处理机制,因此还是要走finally的
            x++;//x的改变并不会影响返回值变量_return的值
            System.out.println("finally:"+x);
        }
    }
}
